#ifndef __VCD_START_WINDOW_H__
#define __VCD_START_WINDOW_H__

#include <string.h>
#include <stdlib.h>
#include <stdio.h>

#include <config.h>
#include <gio/gio.h>
#include <gtk/gtk.h>
#include <glib/gprintf.h>
#include <glib/gi18n.h>

#include <json-glib/json-glib.h>
#include <curl/curl.h>

G_BEGIN_DECLS

extern struct start_window *g_start_window;

struct start_window
{
    GtkWidget *main_window_handle;
    GtkWidget *show_wait_win;
    GtkWidget *button_login;
    GtkWidget *remember_passwd;
    GtkWidget *auto_login;
    GtkWidget *label_ip_node;
    GtkWidget *entry_passwd;
    GtkWidget *entry_user;
#ifndef __linux__
    GtkWidget *header;
    GtkWidget *entry_node;
    GtkWidget *login_type;
#endif
    GtkWidget *local_model;
    gboolean full_screen;
    gboolean open_develop_tool;
};

void vcd_client_start(void);
void vcd_start_window_set_full_screen(gboolean b);
void vcd_start_window_set_open_develop_tool(gboolean b);

void open_interval_get_ip(void);
void stop_interval_get_ip(void);
void start_login_button_state(void);
void stop_login_button_state(void);
void vcd_start_window_show();
void vcd_start_window_hide();
void set_passwd_entry_eye(GtkWidget *entry, gboolean openeye);

extern int g_icon_press_state;

G_END_DECLS

#endif
